前提知識 §
PC-8001では、画面アトリビュートの行あたりの変更回数に制限があり、限界を超えるとそれ以上画面アトリビュートを変更できなくなります。これはハード的なμPD3301の制約です。
一方で、N-BASICのPSET/PRESETは、通常ですと、アトリビュートを変更してグラフィック属性にしてからグラフィックのドットをオンまたはオフにします。しかし、変更回数が限界に達していると、属性を変更することなくドットのオン/オフ処理が行われます。もし、通常文字が表示されるアトリビュートが指定されていた場合、PSET/PRESETは特定の文字コードのビットをオン/オフします。その結果、表示される文字が変わります。
それ何ができるか? §
属性の変化回数が限界を超えた先にある領域で、PSETを用いて表示する文字を設定することが出来ます。PRINT文を使わずに文字を書き込めます。POKEも要りません。
実際のコード §
実行結果(M88のN-BASIC 1.2で実行) §